Public Class QuestionNode
    Implements IQuestionNode

    Private _questionId As Integer
    Private _uid As Guid
    Private _questionNumber As String
    Private _sortId As Byte
    Private _enabled As Boolean = False

    Public InstrumentID As String

    Public Sub New( _
    ByVal UID As Guid, _
    ByVal QuestionID As Integer, _
    ByVal InstrumentID As String, _
    ByVal SortID As Byte)
        _uid = UID
        _questionId = QuestionID
        Me.InstrumentID = InstrumentID
        Me.SortID = SortID
    End Sub

#Region "IQuestionNode"

    Public ReadOnly Property ChildNodes() As IQuestionNodeCollection Implements IQuestionNode.ChildNodes
        Get
            Return QuestionnaireTakerODS.Provider.GetChildNodes(Me)
        End Get
    End Property

    Public ReadOnly Property ParentNode() As IQuestionNode Implements IQuestionNode.ParentNode
        Get
            Return Nothing
        End Get
    End Property

    Public ReadOnly Property ParentUID() As Guid Implements IQuestionNode.ParentUID
        Get
            Return Nothing
        End Get
    End Property

    Public ReadOnly Property QuestionID() As Integer Implements IQuestionNode.QuestionID
        Get
            Return _questionId
        End Get
    End Property

    Public ReadOnly Property UID() As Guid Implements IQuestionNode.UID
        Get
            Return _uid
        End Get
    End Property

#End Region

    Public Property QuestionNumber() As String Implements IQuestionNode.QuestionNumber
        Get
            Return _questionNumber
        End Get
        Set(ByVal value As String)
            _questionNumber = value
        End Set
    End Property

    Public Property SortID() As Byte Implements IQuestionNode.SortID
        Get
            Return _sortId
        End Get
        Set(ByVal value As Byte)
            _sortId = value
        End Set
    End Property

    Public Property Enabled() As Boolean Implements IQuestionNode.Enabled
        Get
            Return _enabled
        End Get
        Set(ByVal value As Boolean)
            _enabled = value
        End Set
    End Property
End Class